<?php

/**
 * Description of CursoAutorizado
 *
 * @author JeyDotC
 */
class CursoNoAutorizado extends Plugin {

    private $cursosHabilitados = array();


    public function aroundModuleGuardarCurso(Cursos $curso) {
        $result = true;
        $this->cursosHabilitados = $this->baseObject->model->courses->GetHabilitados(AcawebUtils::GetPeriodoAcademicoMatriculas());
        if(!$this->isHAbilitado($curso)){
            $this->baseObject->addMessage(new Message("No puedes matricular este curso porque tiene prerequicitos o ya ha sido cursado y aprobado.", "No autorizado: ", Message::ERROR));
            $result = false;
        }
        return $result;
    }
    
    private function isHAbilitado(Cursos $curso) {
        $habilitado = false;
        
        foreach ($this->cursosHabilitados as /* @var $cursoHabilitado Cursos */ $cursoHabilitado) {
            if($cursoHabilitado->getCursoPk()->toString() == $curso->getCursoPk()->toString()){
                $habilitado = true;
                break;
            }
        }
        
        return $habilitado;
    }

}

?>
